49 research outputs found
Mixed Nondeterministic-Probabilistic Automata: Blending graphical probabilistic models with nondeterminism
Graphical models in probability and statistics are a core concept in the area of probabilistic reasoning and probabilistic programming—graphical models include Bayesian networks and factor graphs. In this paper we develop a new model of mixed (nondeterministic/probabilistic) automata that subsumes both nondeterministic automata and graphical probabilistic models. Mixed Automata are equipped with parallel composition, simulation relation, and support message passing algorithms inherited from graphical probabilistic models. Segala’s Probabilistic Automatacan be mapped to Mixed Automata
Refinement for Transition Systems with Responses
Motivated by the response pattern for property specifications and
applications within flexible workflow management systems, we report upon an
initial study of modal and mixed transition systems in which the must
transitions are interpreted as must eventually, and in which implementations
can contain may behaviors that are resolved at run-time. We propose Transition
Systems with Responses (TSRs) as a suitable model for this study. We prove that
TSRs correspond to a restricted class of mixed transition systems, which we
refer to as the action-deterministic mixed transition systems. We show that
TSRs allow for a natural definition of deadlocked and accepting states. We then
transfer the standard definition of refinement for mixed transition systems to
TSRs and prove that refinement does not preserve deadlock freedom. This leads
to the proposal of safe refinements, which are those that preserve deadlock
freedom. We exemplify the use of TSRs and (safe) refinements on a small
medication workflow.Comment: In Proceedings FIT 2012, arXiv:1207.348
Contracts for System Design
Systems design has become a key challenge and differentiating factor over the last decades for system companies. Aircrafts, trains, cars, plants, distributed telecommunication military or health care systems, and more, involve systems design as a critical step. Complexity has caused system design times and costs to go severely over budget so as to threaten the health of entire industrial sectors. Heuristic methods and standard practices do not seem to scale with complexity so that novel design methods and tools based on a strong theoretical foundation are sorely needed. Model-based design as well as other methodologies such as layered and compositional design have been used recently but a unified intellectual framework with a complete design flow supported by formal tools is still lacking albeit some attempts at this framework such as Platform-based Design have been successfully deployed. Recently an "orthogonal" approach has been proposed that can be applied to all methodologies proposed thus far to provide a rigorous scaffolding for verification, analysis and abstraction/refinement: contractbased design. Several results have been obtained in this domain but a unified treatment of the topic that can help in putting contract-based design in perspective is still missing. This paper intends to provide such treatment where contracts are precisely defined and characterized so that they can be used in design methodologies such as the ones mentioned above with no ambiguity. In addition, the paper provides an important link between interfaces and contracts to show similarities and correspondences. Examples of the use of contracts in design are provided as well as in depth analysis of existing literature.Cet article fait le point sur le concept de contrat pour la conception de systèmes. Les contrats que nous proposons portent, non seulement sur des propriétés de typage de leurs interfaces, mais incluent une description abstraite de comportements. Nous proposons une méta-théorie, ou, si l'on veut, une théorie générique des contrats, qui permet le développement séparé de sous-systèmes. Nous montrons que cette méta-théorie se spécialise en l'une ou l'autre des théories connues
Contracts for Systems Design: Theory
Aircrafts, trains, cars, plants, distributed telecommunication military or health care systems,and more, involve systems design as a critical step. Complexity has caused system design times and coststo go severely over budget so as to threaten the health of entire industrial sectors. Heuristic methods andstandard practices do not seem to scale with complexity so that novel design methods and tools based on astrong theoretical foundation are sorely needed. Model-based design as well as other methodologies suchas layered and compositional design have been used recently but a unified intellectual framework with acomplete design flow supported by formal tools is still lacking.Recently an “orthogonal” approach has been proposed that can be applied to all methodologies introducedthus far to provide a rigorous scaffolding for verification, analysis and abstraction/refinement: contractbaseddesign. Several results have been obtained in this domain but a unified treatment of the topic that canhelp in putting contract-based design in perspective is missing. This paper intends to provide such treatmentwhere contracts are precisely defined and characterized so that they can be used in design methodologiessuch as the ones mentioned above with no ambiguity. In addition, the paper provides an important linkbetween interface and contract theories to show similarities and correspondences.This paper is complemented by a companion paper where contract based design is illustrated throughuse cases
Contracts for Systems Design: Methodology and Application cases
Recently, contract based design has been proposed as an ”orthogonal” approach that can beapplied to all methodologies proposed so far to cope with the complexity of system design. Contract baseddesign provides a rigorous scaffolding for verification, analysis and abstraction/refinement. Companionreport RR-8759 proposes a unified treatment of the topic that can help in putting contract-based design in perspective.This paper complements RR-8759 by further discussing methodological aspects of system design withcontracts in perspective and presenting two application cases.The first application case illustrates the use of contracts in requirement engineering, an area of system designwhere formal methods were scarcely considered, yet are stringently needed. We focus in particular to thecritical design step by which sub-contracts are generated for suppliers from a set of different viewpoints(specified as contracts) on the global system. We also discuss important issues regarding certification inrequirement engineering, such as consistency, compatibility, and completeness of requirements.The second example is developed in the context of the Autosar methodology now widely advocated inthe automotive sector. We propose a contract framework to support schedulability analysis, a key step inAutosar methodology. Our aim differs from the many proposals for compositional schedulability analysisin that we aim at defining sub-contracts for suppliers, not just performing the analysis by parts—we knowfrom companion paper RR-8759 that sub-contracting to suppliers differs from a compositional analysis entirelyperformed by the OEM. We observe that the methodology advocated by Autosar is in contradiction withcontract based design in that some recommended design steps cannot be refinements. We show how tocircumvent this difficulty by precisely bounding the risk at system integration phase. Another feature ofthis application case is the combination of manual reasoning for local properties and use of the formalcontract algebra to lift a collection of local checks to a system wide analysis
Sequentializing Parameterized Programs
We exhibit assertion-preserving (reachability preserving) transformations
from parameterized concurrent shared-memory programs, under a k-round
scheduling of processes, to sequential programs. The salient feature of the
sequential program is that it tracks the local variables of only one thread at
any point, and uses only O(k) copies of shared variables (it does not use extra
counters, not even one counter to keep track of the number of threads).
Sequentialization is achieved using the concept of a linear interface that
captures the effect an unbounded block of processes have on the shared state in
a k-round schedule. Our transformation utilizes linear interfaces to
sequentialize the program, and to ensure the sequential program explores only
reachable states and preserves local invariants.Comment: In Proceedings FIT 2012, arXiv:1207.348
A Robust Specification Theory for Modal Event-Clock Automata
In a series of recent work, we have introduced a general framework for
quantitative reasoning in specification theories. The contribution of this
paper is to show how this framework can be applied to yield a robust
specification theory for timed specifications.Comment: In Proceedings FIT 2012, arXiv:1207.348
Residual for Component Specifications
Component-based design aims at building new software systems from preexisting components. However in current component platforms, reuse of a component is completed from its signature. Thus nothing can be inferred about the interaction between the reused component and its environment and behavioral mismatch may occur. To express component reuse at a behavioral level, we introduce modal automata and acceptance automata as intuitive formalisms for behavioral interface description. From the expressiveness point of view, these formalisms allow to state some forms of liveness properties. We argue that reusing a component C1, the behavior of which is described by the specification S1, in order to realize a global system specified by S amounts to exhibiting a residual specification S / S1 so that any model C2 of S / S1 when composed with C1 constitutes a composite system satisfying S. We define a quotient operation for modal automata and acceptance automata of polynomial complexity (quadratic in the size of the specifications)
Développement dirigé par les tests et revue de code par les pairs pour l'apprentissage de la programmation
International audienceCet article introduit une nouvelle approche d'enseignement de la programmation s'inspirant de la démarche d'apprentissage dirigé par les tests (TDL). Cette approche, baptisée "apprentissage dirigé par les tests et la revue par les pairs" (PRaTDL), est caractérisée par un protocole articulant les séquences de programmation en autonomie dirigée par les tests et les séquences de revue de code par les pairs. La démarche PRaTDL a été expérimentée sur un groupe d'étudiants de Master Informatique. Les résultats de notre étude qualitative mettent en avant les sentiments d'autonomie et d'encapacitation associés aux séquences de programmation dirigée par les tests et les sentiments d'approfondissement et de compréhension suscités par les séquences de revue de code par les pairs. Mots-clés. Apprentissage de la programmation, développement dirigé par les tests, revue de code par les pairs, évaluation par les pairs